// 都可以定义服务器返回回来的数据
interface Person {
  id?: string
  idCard: string
  defaultFlag: 0 | 1 // 它的取值只能是0和1（字面量联合类型）
  address?: {
    province: string
    city: string
  }
}

let p1: Person = {
  idCard: '11012131233232121',
  defaultFlag: 1,
  id: '123456'
}

console.log(p1)

let p2: Person = {
  idCard: '112121',
  defaultFlag: 0,
  address: {
    province: '广西',
    city: '河池'
  }
}

console.log(p2)

// 接口才有集成
interface Point2D {
  x: number
  y: number
}

/** 
interface Point3D {
  x: number
  y: number
  z: number
}
*/
// 使用继承实现了属性的复用
interface Point3D extends Point2D {
  z: number
}

let p3: Point3D = {
  x: 100,
  y: 100,
  z: 100
}

export {}
